perm filename BUGS[UCI,SYS] blob
sn#091917 filedate 1974-03-15 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00005 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 INSTRUCTIONS
C00004 00003 **********BUGS**********
C00009 00004 DISLIKES
C00010 00005 SUGGESTIONS
C00012 ENDMK
C⊗;
INSTRUCTIONS
This file is for reporting bugs in ILISP, and for making suggestions
about old features that need changing or new features people would
like added to the system. Please give your name and the date when
you make an entry.
Please edit this file with E if possible and if not, please either
use SOS or remove page one. Our editor, E, gets very confused by
TECO.
**********BUGS**********
24-FEB-74 SDR @CALTECH
1) LINE 15500/13 (SOS NUMBERED) OF ILISP.MAC READS
IFN STPGAP,<MAKAT<PGLINE>,SUBR>
BUT SHOULD BE
IFN STPGAP,<MKAT<PGLINE>,SUBR>.
EVEN AFTER MAKING THE ABOVE CHANGE AND SETTING STPGAP TO 1 AT THE
BEGINNING OF THE CODE, THE RESULTING ILISP SYSTEM INSISTS ON THE
REALLOCATION OF SPACE BECAUSE THE INITIAL, DEFAULT ALLOCATION IS
TOO LARGE. BUT HOW DOES ONE REDUCE ALLOCATION? THE MAXIMUM CORE
I CAN USE IS 50K.
2) DATA-INIT COMPLAINS OF INSUFFICIENT BINARY SPACE IF ONE DOESN'T
INCREASE THAT SPACE AND COMPLAINS WITH
**ERROR** MEANINGLESS DATUM -- CMARKERS.
IF BIN SPACE IS EXPANDED!
---SCOTT ROTH
27-AUG-73 TVR
(PRIN1(QUOTE /)/")) results in /)/"
(PRIN1(QUOTE /"/))) results in ")
This clearly loses.
Tovar
17-JUN-73 DBA
Funnies when interrupting
(PROG NIL LBL (PRINC @FOO)(GO LBL))
If the (GO LBL) is interrupted then on doing OK or GO and another
interrupt, the second break thinks it is at a depth of 2.
The OK or GO does not reset the break depth counter,and the break
is not properly released. The next interrupt of GO gives a depth of
one more, but doing ↑ causes one of two kinds of lossage:
1. xxxxxxx ILL MEM REF FROM UNBREAK0
(/BREAK1 BROKEN)
in which case the only escape is ↑↑ (which continues to work)
2. xxxxxxx ILL MEM REF FROM SETARG
NON-NUMERIC ARGUMENT
at which time the thing goes into a tight loop from which there
is no escape.
!!! reply from Daryle Lewis about above problem
BRUCE,
THE PROBLEM WITH GO (AND RETURN FOR THAT MATTER) IS THAT
IT UNWINDS THE STACK BACK TO THE LAST PROG. HOWEVER, IT DOES NOT
UNWIND ERRSETS. SINCE THE GO OR OK EVALUATES ITS EXPRESSION INSIDE
OF AN ERRSET, THE NEXT TIME YOU DO A ↑ (WHICH IN TURN DOES (ERR NIL))
CONTROL IS TRANSFERED TO A POINT ON THE STACK WHICH IS NO LONGER
VALID. THIS CAN BE FIXED, AND PROBABLY WILL BE IN THE NEXT RELEASE.
THE PROBLEM WITH THE LEVEL NUMBER IS NOT SO SIMPLE. GO AND OK
ARE EXPECTING THE EXPRESSION TO RETURN A VALUE. AFTER THE VALUE
IS RETURNED, THE LEVEL # IS DECREMENTED. SINCE GO AND RETURN
SKIP OVER ALL OF THAT AND IMMEDIATELY RETURN TO THE LEVEL OF
THE PROG, THE LEVEL # REMAINS UNCHANGED, AS DO THE IO CHANNELS AND
THE PROMPT CHARACTER. YOU WILL GET A SIMILAR PROBLEM IF THE BROKEN
EXPRESSION CONTAINS A RETFROM, EXCEPT THAT RETFROM HANDELS ERRSETS.
I WILL GIVE A LOT OF THOUGHT TO THIS AND SEE WHAT I CAN COME UP WITH.
IN THE MEANTIME DON'T USE GO OR OK ON GO OR RETURN. IF THE BREAK
OCCURS BECAUSE OF AN ERROR, YOU CAN USE EX TO CONTINUE, BUT OTHERWISE,
I AM AT LOSS AS TO WHAT TO SAY. SORRY.
DARYLE
!!!
DISLIKES
All the time [EVERY,ONE]
Typeahead gets flushed too often!
27-AUG-73 TVR
Typeahead is flushed when ILISP is started because ERRSET flushs TTY
buffer irrespective of second arg. That should be fixed in ILISP.MAC.
15-MAR-74 TVR
The above bug still hasn't been fixed!!!
SUGGESTIONS
2 JAN 73 DBA
The loader should be callable and passed "arguments" as a subroutine ie
it should not be necessary to tell it from the TTY what to load and how.
4 JAN 74 REM
There should exist a master index of all predefined functions, telling
whether the desceiption occurs in the LISP 1.6 Sailon, the ILISP manual,
or whereever, and maybe including the list of parameters such as:
CONS SUBR 1.6 (CONS <LIST> <LIST>)
DEFPROP FSUBR 1.6 (DEFPROP "NAME" "FUNCTIONAL DEFINITION" "TYPE OF FUNCTION")
EDITF FSUBR ILISP (EDITF "NAME OF FUNCTION") or (EDITF)
Also, the published copies of the LISP 1.6 Sailon that are
floating around have many errors, both misalignment of text and graphics,
and actual factual errors. Is there a list of errata to the published manual?